Emulation devices for emulating control/regulating functions of a control/regulating unit are used as prototyping tools in the development and/or the software implementation of new control/regulating functions. Such an emulation device is also referred to as a bypass. With the aid of the bypass, functions of an arbitrary control/regulating unit (ECU, electronic control unit) may be swapped out into an external emulation computer. The communication between the control/regulating unit and the emulation computer occurs via a data circuit, which is implemented, for example, as a bus line, in particular as a controller area network (CAN) bus line. For the purpose of communication, a software interface is provided in both the control/regulating unit and the emulation computer.
A method of emulating functions of a control unit of the type initially discussed in German Published Patent Application No. 33 18 410. New control/regulating programs may be developed easily in higher programming languages on high-performance emulation computers, through which rapid development of the software functions is provided (rapid prototyping). To test the newly programmed functions, the emulation computer is linked via the data circuit to a control/regulating unit for which the functions were developed. The new functions are emulated on the emulation computer while the remaining parts of the control/regulating program run on the control/regulating unit. Therefore, a standard control unit may be used even in the development phase of new software functions, so that experiments with newly programmed functions run especially close to the standard manner.
Before the beginning of an emulation, the data circuit between the emulation computer and the control unit is produced via the software interfaces. During an initialization phase of the emulation computer, it transmits specific data of the functions to be emulated in accordance with a permanently preselected transmission protocol. This data is stored in tables provided for this purpose in the control unit. In bypass operation, the communication from the control unit to the emulation computer is initiated by fixed trigger events. The type of communication between the control unit and the emulation computer is defined by the data stored in the tables.
An emulation device of the type initially cited is discussed in German Published Patent Application No. 39 17 979. In this case, a bypass is discussed which uses a standardized hardware interface on a control unit for producing the data circuit. During bypass operation, the control unit accesses either a read/write memory of the emulation device, in which the function to be emulated is stored, or a read memory of the control unit, on which the actual program execution of the control/regulating program is stored. After a trigger event is initiated, the control/regulating program is no longer executed on the microprocessor of the control/regulating unit, but rather this switches over to the read/write memory of the emulation device and executes the function to be emulated.
In the present application, reference is expressly made to German Published Patent Application No. 33 18 410 and German Published Patent Application No. 39 17 979.
In other methods and devices for emulating functions of a control/regulating unit, the interfaces of the control/regulating unit and the emulation computer are aligned to the functions to be emulated and are defined correspondingly (either through fixed programming of the software interfaces or through a fixed hardware configuration of the hardware interfaces). In particular, the protocol for data transmission between the emulation computer and the control/regulating unit is permanently preselected during bypass operation. Therefore, for example, the size of the tables, the word length of the transmitted configuration data, the timing code for the data transmission, and statements about whether operation occurs with or without monitoring of the data circuit may only be adjusted to new control/regulating functions to be emulated by complicated reprogramming of the software interfaces. The possibilities of rapid prototyping are significantly restricted by these necessary changes of the software at the interfaces.